home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Supervisor's Toolkit
/
Network Supervisor's Toolkit.iso
/
patches
/
_30xptch
/
cpq16m
/
cpq16mb.doc
next >
Wrap
Text File
|
1996-07-10
|
9KB
|
264 lines
CPQ16MB
14 March 1990
Copyright (C) 1990 Compaq Computer Corporation
All rights Reserved.
INTRODUCTION:
CPQ16MB is a TSR program designed to allow users of Novell NetWare
386 version 3.0 the ability to access more than 16 Megabytes of RAM.
Currently, version 3.0 does not use memory above 16 Megabytes, and
thus that memory was effectively wasted. With the introduction of
computers using the Extended Industry Standard Architecture (EISA)
architecture the 16 Megabyte barrier has been lifted.
This program loads itself as a DOS extension, and requires
approximately 500 bytes of memory.
REQUIREMENTS:
The following list of equipment/software is needed in order to use
this patch:
o NetWare 386 version 3.0
o A Compaq 386/486 Computer
o 16 Megabytes of RAM or more
o a copy of CPQ16MB.EXE
USAGE:
The easiest way to use CPQ16MB is too include it in your AUTOEXEC.BAT
file, and have DOS automatically install it at system initialization
time.
The following is a sample AUTOEXEC.BAT file which will load CPQ16MB and
then start the NetWare server.
@ECHO OFF
C:\CPQ16MB\CPQ16MB
C:\NOVELL\SERVER
This sample batch file assumes that:
1. CPQ16MB.EXE is stored in a directory named CPQ16MB on the
C: drive and
2. The NetWare 386 software is stored in a directory called
NOVELL on the C: drive.
These commands will have to be adjusted to fit your specific
system.
The CPQ16MB program will display a welcome message when loaded. Once
the program is loaded, NetWare 386 version 3.0 will be capable of
accessing more than 16 Megabytes of RAM. CPQ16MB will make all
contiguous memory above 1 Megabyte availble to NetWare.
WHO SHOULD USE CPQ16MB:
CPQ16MB is intended for users of NetWare 386 version 3.0 who have in
excess of 16 Megabytes of RAM on their file server.
Please refer to the Compaq Technical Reference Guide (see the chapter
on Memory and Memory Expansion) for a complete discussion of memory
usage and mapping.
This program will work with both (EISA) machines (Compaq SystemPro,
Compaq Deskpro 486), as well as Industry Standard Architecture (ISA)
machines (Compaq Deskpro 386 family). There is no benefit from using
this program on systems with less than 16 Megabytes of RAM.
This program is not designed to work in environments other than
NetWare 386 version 3.0.
THEORY OF OPERATION:
The following memory map will help to illustrate some of the topics
discussed below.
Address:
256M ┌───────────────────────────────────┐
│ │ FFFFFFFh
│ Super Extended Memory │
│ 245,760K (Max) │
│ 240 Meg │
│ (1000000h to FFFFFFFh) │
│ │ 1000000h
16M ├───────────────────────────────────┤
│ │ FFFFFFh
│ Write protected RAM │
│ (System Use -- Shadow ROM) │
│ 128K │
│ (FE0000h to FFFFFFh) │
│ │ FE0000h
├───────────────────────────────────┤
│ │ FDFFFFh
│ Compaq Built in Memory (BIM) │
│ 256K │
│ (FA0000h to FDFFFFh) │
│ │ FA0000h
├───────────────────────────────────┤
│ │ F9FFFFh
│ Extended Memory │
│ 14,976K (Max) │
│ (100000h to F9FFFFh) │
│ │ 100000h
1M ├───────────────────────────────────┤
│ │ FFFFFh
│ ROM Space │
│ 256K │
│ (C0000h to FFFFFh) │
│ │ C0000h
1M ├───────────────────────────────────┤
│ │ BFFFFh
│ Video RAM Space │
│ 128K │
│ (A0000h to BFFFFh) │
│ │ A0000h
640K ├───────────────────────────────────┤
│ │ 9FFFFh
│ DOS Conventional Memory │
│ 640K (Max) │
│ (0h to 9FFFFh) │
│ │
0 └───────────────────────────────────┘ 0h
NetWare 386 uses BIOS Int 15h, Fcn 88h to determine the amount of
extended RAM available. This function returns the amount of memory
between 1 Megabyte and 16 Megabytes (inclusive) in the lower 16 bits
of the processor's EAX register, or the AX register. NetWare 386 is
expecting the number of Kbytes to be returned in the entire EAX
register. By intercepting the Int 15h, Fcn 88h requests, the EAX
register can be loaded with the amount of memory above the 1 Megabyte
address. This gives a theoretical limit of 4 Gigabytes, however
256 Megabytes is most memory a Compaq machine can address (Compaq
SystemPro).
In order for the memory to be contiguous certain other actions must
take place first. On Compaq 386 and 486 systems, there are 384 Kbytes
of RAM located just below the 16 Megabyte boundary. This memory is
broken into two parts: the upper 128 Kbytes is reserved for system
usage, and the remaining 256 Kbytes is the Compaq Built In Memory (or
BIM). The upper 128 Kbytes, which can be write protected, is used to
hold a copy of the system ROMs and video ROMs to allow high speed
access. The BIM is used by programs like CEMM, VDISK, CACHE and
others. It allows such programs to allocate data and/or code in high
memory and not waste memory normally used by DOS. These programs, or
any program which loads itself in extended memory, should NOT be used
with this program or with NetWare 386.
Since all memory must be contiguous for NetWare 386 to work properly,
the BIM area must not be in use, and 128 Kbyte system area must be
reclaimed and write enabled (see Compaq Technical Reference Guide, in
the chapter on BIOS). Once this is done, the total amount of memory
is computed and returned in the EAX register for NetWare 386 to use.
On Compaq based ISA machines with 16 Megabytes of RAM, an additional
128 Kbytes of RAM will be made available to NetWare.
On Compaq EISA machines with more than 16 Megabytes of RAM, the
following memory is made available:
o 14,976 Kbytes (100000h to F9FFFFh) Extended memory
o 256 Kbytes (FA0000h to FDFFFFh) BIM area
o 128 Kbytes (FE0000h to FFFFFFh) Write protectable RAM area
o n Kbytes (1000000h to xxxxxxxh) Super Extended memory
o 384 Kbytes (excess memory from ROM space, A0000h to FFFFFh)
Note: On EISA systems with 256 Megabytes of RAM, the 384 Kbytes of RAM
from the ROM space cannot be re-claimed as there is not enough
address space to accomadate it.
As an example:
On a 32 Megabyte Compaq SystemPro there would be 32,128 Kbytes of
Extended RAM available, which is broken down as follows:
o 14,976 Kbytes (100000h to F9FFFFh)
o 256 Kbytes (FA0000h to FDFFFFh)
o 128 Kbytes (FE0000h to FFFFFFh)
o 16,384 Kbytes (1000000h to 1FFFFFFh)
o 384 Kbytes (2000000h to 205FFFFh)
Total: 32,128 Kbytes (31.375 Megabytes)
DOS memory: 640 Kbytes (0.675 Megabytes)
Extended: 32,128 Kbytes (31.375 Megabytes)
Total RAM: 32,768 Kbytes (32.0 Megabytes)
COMMAND LINE OPTIONS:
There are a few optional command line parameters. The exact command
line syntax of CPQ16MB is:
cpq16mb [/f] [/m[x|d]#] [/sd|e] [/r] [/h|?]
Where the command line parameters are as follows:
/f -- Force the program to be loaded even if it has already been
loaded or if BIM is being used. This is useful when the
status of either of these two is incorrectly determined.
Note: Forcing the program to load when BIM memory usage
has been detected can be very dangerous.
Using programs that use BIM memory or any
other part of Extended memory and NetWare 386 at
the same time will probably cause your system
to crash.
/m -- Manually set the amount of memory to be made available.
# -- (required) the amount of memory in Kbytes.
x -- (optional, Default) specifies the number is in HEX
d -- (optional) specifies the number is in DECIMAL
/s -- Used to control the disabling of the shadow ROM.
This does not affect the computation of available
memory (i.e. the write protected memory IS counted
as available RAM).
d -- disable shadow ROM (Default)
e -- Leave shadow ROM enabled.
(This option prevents the NetWare 386 server
from initializing and operating properly.)
Note: /se will not re-enable the shadow ROM after it has
been disabled.
/r -- Report memory information.
This is useful to see how much memory NetWare 386
version 3.0 will be 'given' when it does a memory
query. This will report what Int 15h, Fcn 88h will
report and it will also display what is stored in the
CMOS RAM area. The CMOS RAM area contains the amount
of memory tested good during the Power On Self Test
(POST). Both of these numbers are in Kbytes.
Also, if the system is EISA based, this option will
display all 'SYSTEM' memory stored in the EISA
configuration area.
/h -- Help screen.
/? -- Help screen.